﻿using Digitalmes.Model.EquipmentManagement;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Digitalmes.Services
{
    public interface IAlarmServer
    {
        Task StartAsync();
        Task StopAsync();
        Task<bool> CheckAlarmConditionsAsync(Equipment equipment);
        Task<EquipmentAlarmRecord> TriggerAlarmAsync(EquipmentAlarmItem alarmItem, Equipment equipment);
        Task<bool> ResolveAlarmAsync(long alarmRecordId);
        List<EquipmentAlarmRecord> GetActiveAlarms();
        List<EquipmentAlarmRecord> GetAlarmHistory(DateTime startTime, DateTime endTime);
    }

}
